package com.android.questions.config;

import com.android.base.util.Mmkv;

/**
 * FileName: LoginConfig
 * Author: admin
 * Date: 2021/11/5 15:41
 * Description:
 */
public class LoginConfig {

    public static String APP_ID_WX = "";

    /**
     * 设置用户头像
     */
    public static void setUserHeadUrl(String headUrl) {
        Mmkv.setString("user_head", headUrl);
    }

    /**
     * 获取用户头像
     */
    public static String getUserHeadUrl() {
        return Mmkv.getString("user_head");
    }

    /**
     * 保存用户昵称
     *
     * @param nickName
     */
    public static void setUserNickName(String nickName) {
        Mmkv.setString("nick_name", nickName);
    }

    /**
     * 获取用户昵称
     *
     * @return
     */
    public static String getUserNickName() {
        return Mmkv.getString("nick_name");
    }

    /**
     * 保存用户ID
     *
     * @param userId
     */
    public static void setUserId(String userId) {
        Mmkv.setString("user_id", userId);
    }

    /**
     * 获取用户ID
     *
     * @return
     */
    public static String getUserId() {
        return Mmkv.getString("user_id");
    }

    /**
     * 保存微信OpenId
     *
     * @param userOpenId
     */
    public static void setUserOpenId(String userOpenId) {
        Mmkv.setString("user_openid", userOpenId);
    }

    /**
     * 获取微信OpenId
     *
     * @return
     */
    public static String getUserOpenId() {
        return Mmkv.getString("user_openid");
    }

    /**
     * 保存当前用户是否登录
     *
     * @param isLogin
     */
    public static void setLoginState(Boolean isLogin) {
        Mmkv.setBoolean("login_state", isLogin);
    }

    /**
     * 获取当前用户是否登录
     *
     * @return
     */
    public static Boolean getLoginState() {
        return Mmkv.getBoolean("login_state");
    }

    /**
     * 保存当日签到状态
     *
     * @param signState
     */
    public static void setTodaySignState(int signState) {
        Mmkv.setInteger("today_sign_state", signState);
    }

    /**
     * 获取当日签到状态
     *
     * @return
     */
    public static int getTodaySignState() {
        return Mmkv.getInteger("today_sign_state");
    }

    /**
     * 保存当前用户红包
     *
     * @param cashNumber
     */
    public static void setUserCash(double cashNumber) {
        Mmkv.setDouble("user_cash_number", cashNumber);
    }

    /**
     * 获取当前用户红包
     *
     * @return
     */
    public static double getUserCash() {
        return Mmkv.getDouble("user_cash_number");
    }

    /**
     * 保存当前用户红包转化率
     *
     * @param cashConvert 用户红包转化率
     */
    public static void setCashConvert(double cashConvert) {
        Mmkv.setDouble("cash_convert", cashConvert);
    }

    /**
     * 获取当前用户红包转化率
     *
     * @return 用户红包转化率
     */
    public static double getCashConvert() {
        return Mmkv.getDouble("cash_convert");
    }

    /**
     * 保存当前用户存钱罐余额
     *
     * @param cashSave 存钱罐余额
     */
    public static void setSaveCash(double cashSave) {
        Mmkv.setDouble("cash_save", cashSave);
    }

    /**
     * 获取当前用户存钱罐余额
     *
     * @return 用户存钱罐余额
     */
    public static double getSaveCash() {
        return Mmkv.getDouble("cash_save");
    }

    /**
     * 保存答题数
     */
    public static void setUserAnswerNumber(int answerNumber) {
        Mmkv.setInteger("user_answer_number", answerNumber);
    }

    /**
     * 获取答题数
     *
     * @return
     */
    public static int getUserAnswerNumber() {
        return Mmkv.getInteger("user_answer_number");
    }

    /**
     * 保存答题成功次数
     */
    public static void setUserAnswerSuccessNumber(int answerNumber) {
        Mmkv.setInteger("user_answer_success_number", answerNumber);
    }

    /**
     * 获取答题成功次数
     *
     * @return
     */
    public static int getUserAnswerSuccessNumber() {
        return Mmkv.getInteger("user_answer_success_number");
    }

    /**
     * 保存收益进度
     *
     * @param earnings
     */
    public static void setUserEarningsProgress(double earnings) {
        Mmkv.setDouble("user_earnings_progress", earnings);
    }

    /**
     * 获取收益进度
     */
    public static double getUserEarningsProgress() {
        return Mmkv.getDouble("user_earnings_progress");
    }

    /**
     * 保存收益分红状态
     *
     * @param earnings
     */
    public static void setUserEarningsState(int earnings) {
        Mmkv.setInteger("user_earnings_state", earnings);
    }

    /**
     * 获取收益分红状态
     */
    public static int getUserEarningsState() {
        return Mmkv.getInteger("user_earnings_state");
    }

    /**
     * 保存收益分红金额
     *
     * @param money
     */
    public static void setUserEarningsMoney(double money) {
        Mmkv.setDouble("user_earnings_money", money);
    }

    /**
     * 获取收益分红金额
     */
    public static double getUserEarningsMoney() {
        return Mmkv.getDouble("user_earnings_money");
    }

    /**
     * 设置真关闭次数
     *
     * @param times 真关闭次数
     */
    public static void setRealCloseTimes(int times) {
        Mmkv.setInteger("real_close_times", times);
    }

    /**
     * 获取真关闭次数
     *
     * @return 真关闭次数
     */
    public static int getRealCloseTimes() {
        return Mmkv.getInteger("real_close_times");
    }

    /**
     * 设置用户封禁状态
     *
     * @param banned 用户封禁状态
     */
    public static void setUserBanned(boolean banned) {
        Mmkv.setBoolean("user_banned", banned);
    }

    /**
     * 获取用户封禁状态
     *
     * @return 用户封禁状态
     */
    public static boolean getUserBanned() {
        return Mmkv.getBoolean("user_banned");
    }

    /**
     * 设置同盾检测开关
     *
     * @param open 开关状态
     */
    public static void setTDSwitch(boolean open) {
        Mmkv.setBoolean("tongdun_switch", open);
    }

    /**
     * 获取同盾检测开关
     *
     * @return 开关状态
     */
    public static boolean getTDSwitch() {
        return Mmkv.getBoolean("tongdun_switch");
    }

    /**
     * 设置上次登录的服务器日期
     */
    public static void setLastLoginDate(String value) {
        Mmkv.setString("last_login_date", value);
    }

    /**
     * 获取上次登录的服务器日期
     */
    public static String getLastLoginDate() {
        return Mmkv.getString("last_login_date");
    }

    /**
     * 设置今天惊喜红包已弹出的次数
     *
     * @param times 今天惊喜红包已弹出的次数
     */
    public static void setSurpriseTimes(int times) {
        Mmkv.setInteger("surprise_times", times);
    }

    /**
     * 获取今天惊喜红包已弹出的次数
     *
     * @return 今天惊喜红包已弹出的次数
     */
    public static int getSurpriseTimes() {
        return Mmkv.getInteger("surprise_times");
    }

    /**
     * 设置今天气泡红包已领取的次数
     *
     * @param times 今天气泡红包已领取的次数
     */
    public static void setRedBubbleTimes(int times) {
        Mmkv.setInteger("red_bubble_times", times);
    }

    /**
     * 获取今天气泡红包已领取的次数
     *
     * @return 今天气泡红包已领取的次数
     */
    public static int getRedBubbleTimes() {
        return Mmkv.getInteger("red_bubble_times");
    }

    /**
     * 设置今天看视频补充红包领取的次数
     *
     * @param times 今天看视频补充红包领取的次数
     */
    public static void setAddCoinTimes(int times) {
        Mmkv.setInteger("add_coin_times", times);
    }

    /**
     * 获取今天看视频补充红包领取的次数
     *
     * @return 今天看视频补充红包领取的次数
     */
    public static int getAddCoinTimes() {
        return Mmkv.getInteger("add_coin_times");
    }

    /**
     * 设置引导index
     *
     * @param index 引导index
     */
    public static void setGuideIndex(int index) {
        Mmkv.setInteger("guide_index", index);
    }

    /**
     * 获取引导index
     *
     * @return 引导index
     */
    public static int getGuideIndex() {
        return Mmkv.getInteger("guide_index");
    }

    /**
     * 退出登录
     */
    public static void logout() {
        setUserOpenId("");
        setLoginState(false);
        setUserHeadUrl("");
        setUserId("");
        setUserNickName("");
        setUserCash(0.0);
        setUserAnswerNumber(0);
        setUserAnswerSuccessNumber(0);
        setUserEarningsState(0);
        setUserEarningsProgress(0);
        setUserEarningsMoney(0);
        setCashConvert(0.0);
        setRealCloseTimes(0);
        setTDSwitch(false);
        setUserBanned(false);
        setSaveCash(0);
        setGuideIndex(0);
    }
}